package com.wy._05Random.Enum;

import java.util.Collections;
import java.util.List;

// 分类，根据这些分类对象unicode编码进行分了。汉字的话 不是连着的，那么使用开始结束的方式，是否不太合适。那么使用一个对象的列表？
public enum UnicodeTypeEnum {
    //英文字母 汉字 阿拉伯数字   其中的部分可能冲突,比如数字可以分为 123456  也可以写成  一二三，在这里是可以重复的，但是在对应的枚举是不可以重复
    Chinese_Character("汉字", CnCharacterEnum.getCount(), CnCharacterEnum.getUnicodeFragmentList()),
    Letter("英文字母", EnCharacterEnum.getCount(), EnCharacterEnum.getUnicodeFragmentList()),
    Numeral("阿拉伯数字", 10, Collections.singletonList(new UnicodeFragment("基本数字", 48, 57)));
    private final String name;
    private final int count;
    //在unicode 中片段的合集。
    private final List<UnicodeFragment> unicodeFragmentList;

    UnicodeTypeEnum(String name, int count, List<UnicodeFragment> unicodeFragmentList) {
        this.name = name;
        this.count = count;
        this.unicodeFragmentList = unicodeFragmentList;
    }
    public String getName() {
        return name;
    }

    public int getCount() {
        return count;
    }

    public List<UnicodeFragment> getUnicodeFragmentList() {
        return unicodeFragmentList;
    }
}
